package mx.itesm.goyostacoadventure;

import android.content.res.AssetManager;
import android.util.Log;

import org.andengine.engine.Engine;
import org.andengine.engine.camera.Camera;
import org.andengine.opengl.texture.ITexture;
import org.andengine.opengl.texture.TextureManager;
import org.andengine.opengl.texture.atlas.bitmap.BitmapTextureAtlas;
import org.andengine.opengl.texture.atlas.bitmap.BitmapTextureAtlasTextureRegionFactory;
import org.andengine.opengl.texture.atlas.bitmap.BuildableBitmapTextureAtlas;
import org.andengine.opengl.texture.atlas.bitmap.source.IBitmapTextureAtlasSource;
import org.andengine.opengl.texture.atlas.buildable.builder.BlackPawnTextureAtlasBuilder;
import org.andengine.opengl.texture.atlas.buildable.builder.ITextureAtlasBuilder;
import org.andengine.opengl.texture.bitmap.AssetBitmapTexture;
import org.andengine.opengl.texture.region.ITextureRegion;
import org.andengine.opengl.texture.region.ITiledTextureRegion;
import org.andengine.opengl.texture.region.TextureRegionFactory;
import org.andengine.opengl.texture.region.TiledTextureRegion;
import org.andengine.opengl.vbo.VertexBufferObjectManager;

import java.io.IOException;

/**
 * Carga/Descarga los recurso del juego. Imágenes, Audios
 */
public class AdministradorRecursos
{
    // Instancia única de la clase
    private static final AdministradorRecursos INSTANCE =
            new AdministradorRecursos();

    public Engine engine;
    public ControlJuego actividadJuego;
    public Camera camara;
    public VertexBufferObjectManager vbom;

    // ** TEXTURAS **
    // Escena Splash (imagen estática)
    private ITexture texturaSplash;
    public ITextureRegion regionSplash;

    // Escena MENU
    // IMAGEN DE FONDO DEL MENÚ
    private ITexture texturaFondoFijo;
    public ITextureRegion regionFondoFijo;
    //imagen animada nubes
    private ITexture texturaFondoNubes;
    public ITextureRegion regionFondoNubes;
    //imagen animada edificios
    private ITexture texturaFondoEdificios;
    public ITextureRegion regionFondoEdificios;
    //imagen pasto
    private ITexture texturaFondoPasto;
    public ITextureRegion regionFondoPasto;
    //imagen animada lejos
    private ITexture texturaFondoLejos;
    public ITextureRegion regionFondoLejos;
    //imagen animada cerca
    private ITexture texturaFondoCerca;
    public ITextureRegion regionFondoCerca;
    //imagen Logo
    private ITexture texturaFondoLogo;
    public ITextureRegion regionFondoLogo;


    // Botón jugar del menú (con dos estados, normal y presionado)
    public ITiledTextureRegion regionBtnJugar;
    private BuildableBitmapTextureAtlas btaBtnJugar;
    // Botón jugar del menú (para el menu de tipo MenuScene)
    private ITexture texturaBotonJugar;
    public ITextureRegion regionBotonJugar;
    // Botón acerca de del menú (para el menu de tipo MenuScene)
    private ITexture texturaBotonAcercaDe;
    public ITextureRegion regionBotonAcercaDe;
    //Bontón tutoriales del menú (para el menu de tipo MenuScene)
    private ITexture texturaBotonTutoriales;
    public ITextureRegion regionBotonTutoriales;

    // Escena ACERCA DE
    private ITexture texturaFondoAcercaDe;
    public ITextureRegion regionFondoAcercaDe;

    //Escena TUTORIALES
    private ITexture texturaFondoTutoriales;
    public ITextureRegion regionFondoTutoriales;

    // Escena Juego
    private ITexture texturaFondoJuego;
    public ITextureRegion regionFondoJuego;

    // Joystick virtual (fondo fijo y el botón movible)
    private ITexture texturaFondoControl;
    public ITextureRegion regionFondoControl;
    private ITexture texturaBotonControl;
    public ITextureRegion regionBotonControl;

    private ITexture texturaFondoControlDos;
    public ITextureRegion regionFondoControlDos;
    private ITexture texturaBotonControlDos;
    public ITextureRegion regionBotonControlDos;

    //Sprite Don Goyo
    private BuildableBitmapTextureAtlas texturaDonGoyoIzq;
    public TiledTextureRegion regionDonGoyoIzq;
    private BuildableBitmapTextureAtlas texturaDonGoyoDer;
    public TiledTextureRegion regionDonGoyoDer;
    private BuildableBitmapTextureAtlas texturaDonGoyoArr;
    public TiledTextureRegion regionDonGoyoArr;
    private BuildableBitmapTextureAtlas texturaDonGoyoAba;
    public TiledTextureRegion regionDonGoyoAba;
    private BuildableBitmapTextureAtlas texturaDonGoyoQuietoDer;
    public TiledTextureRegion regionDonGoyoQuietoDer;
    private BuildableBitmapTextureAtlas texturaDonGoyoQuietoIzq;
    public TiledTextureRegion regionDonGoyoQuietoIzq;
    private BuildableBitmapTextureAtlas texturaDonGoyoQuietoAba;
    public TiledTextureRegion regionDonGoyoQuietoAba;

    //Perro3
    private BuildableBitmapTextureAtlas texturaPerro3Der;
    public TiledTextureRegion regionPerro3Der;
    private BuildableBitmapTextureAtlas texturaPerro3Izq;
    public TiledTextureRegion regionPerro3Izq;
    private BuildableBitmapTextureAtlas texturaPerro3Up;
    public TiledTextureRegion regionPerro3Up;
    private BuildableBitmapTextureAtlas texturaPerro3Down;
    public TiledTextureRegion regionPerro3Down;
    private BuildableBitmapTextureAtlas texturaPerro3Der2;
    public TiledTextureRegion regionPerro3Der2;
    private BuildableBitmapTextureAtlas texturaPerro3Izq2;
    public TiledTextureRegion regionPerro3Izq2;
    private BuildableBitmapTextureAtlas texturaPerro3Up2;
    public TiledTextureRegion regionPerro3Up2;
    private BuildableBitmapTextureAtlas texturaPerro3Down2;
    public TiledTextureRegion regionPerro3Down2;

    private BuildableBitmapTextureAtlas texturaPerro3Der3;
    public TiledTextureRegion regionPerro3Der3;
    private BuildableBitmapTextureAtlas texturaPerro3Izq3;
    public TiledTextureRegion regionPerro3Izq3;
    private BuildableBitmapTextureAtlas texturaPerro3Up3;
    public TiledTextureRegion regionPerro3Up3;
    private BuildableBitmapTextureAtlas texturaPerro3Down3;
    public TiledTextureRegion regionPerro3Down3;

    //Perro2
    private BuildableBitmapTextureAtlas texturaPerro2Der;
    public TiledTextureRegion regionPerro2Der;
    private BuildableBitmapTextureAtlas texturaPerro2Izq;
    public TiledTextureRegion regionPerro2Izq;
    private BuildableBitmapTextureAtlas texturaPerro2Up;
    public TiledTextureRegion regionPerro2Up;
    private BuildableBitmapTextureAtlas texturaPerro2Down;
    public TiledTextureRegion regionPerro2Down;
    private BuildableBitmapTextureAtlas texturaPerro2Der2;
    public TiledTextureRegion regionPerro2Der2;
    private BuildableBitmapTextureAtlas texturaPerro2Izq2;
    public TiledTextureRegion regionPerro2Izq2;
    private BuildableBitmapTextureAtlas texturaPerro2Up2;
    public TiledTextureRegion regionPerro2Up2;
    private BuildableBitmapTextureAtlas texturaPerro2Down2;
    public TiledTextureRegion regionPerro2Down2;
    private BuildableBitmapTextureAtlas texturaPerro2Der3;
    public TiledTextureRegion regionPerro2Der3;
    private BuildableBitmapTextureAtlas texturaPerro2Izq3;
    public TiledTextureRegion regionPerro2Izq3;
    private BuildableBitmapTextureAtlas texturaPerro2Up3;
    public TiledTextureRegion regionPerro2Up3;
    private BuildableBitmapTextureAtlas texturaPerro2Down3;
    public TiledTextureRegion regionPerro2Down3;

    //Perro 1
    private BuildableBitmapTextureAtlas texturaPerro1Der;
    public TiledTextureRegion regionPerro1Der;
    private BuildableBitmapTextureAtlas texturaPerro1Izq;
    public TiledTextureRegion regionPerro1Izq;
    private BuildableBitmapTextureAtlas texturaPerro1Up;
    public TiledTextureRegion regionPerro1Up;
    private BuildableBitmapTextureAtlas texturaPerro1Down;
    public TiledTextureRegion regionPerro1Down;

    //Chile Arma 1
    private ITexture texturaChileArma1;
    public ITextureRegion regionChileArma1;

    private ITexture texturaCanastaDer;
    public ITextureRegion regionCanastaDer;
    private ITexture texturaCanastaIzq;
    public ITextureRegion regionCanastaIzq;
    private ITexture texturaCanastaDown;
    public ITextureRegion regionCanastaDown;
    private ITexture texturaCanastaUp;
    public ITextureRegion regionCanastaUp;

    //Cliente
    private BuildableBitmapTextureAtlas texturaCliente1;
    public TiledTextureRegion regionCliente1;
    private BuildableBitmapTextureAtlas texturaCliente2;
    public TiledTextureRegion regionCliente2;
    private BuildableBitmapTextureAtlas texturaCliente3;
    public TiledTextureRegion regionCliente3;

    //Pausa
    private ITexture texturaPausa;
    public ITextureRegion regionPausa;

    private ITexture texturaBtnPausaReanudar;
    public ITextureRegion regionBtnPausaReanudar;

    private ITexture texturaBtnPausaMenu;
    public ITextureRegion regionBtnPausaMenu;

    private ITexture texturaPausar;
    public ITextureRegion regionPausar;

    private ITexture texturaTaco;
    public ITextureRegion regionTaco;


    public static AdministradorRecursos getInstance() {
        return INSTANCE;
    }

    // ASIGNA VALORES INICIALES DEL ADMINISTRADOR
    public static void inicializarAdministrador(Engine engine,
                                                ControlJuego control, Camera camara, VertexBufferObjectManager vbom) {

        getInstance().engine = engine;
        getInstance().actividadJuego = control;
        getInstance().camara = camara;
        getInstance().vbom = vbom;
    }

    // RECURSOS DE LA PANTALLA DE SPLASH
    public void cargarRecursosSplash() {
        try {
            // Carga la imagen de fondo de la pantalla Splash
            texturaSplash = new AssetBitmapTexture(actividadJuego.getTextureManager(),
                    actividadJuego.getAssets(), "Pantallas/Splash/logoTec.png");
            regionSplash = TextureRegionFactory.extractFromTexture(texturaSplash);
            texturaSplash.load();
        } catch (IOException e) {
            Log.d("cargarRecursosSplash", "No se puede cargar el fondo");
        }
    }

    public void liberarRecursosSplash() {
        texturaSplash.unload();
        regionSplash = null;
    }

    // Métodos para el Menu

    public void cargarRecursosMenu() {
        try {
            // Carga las imagenes de fondo de la pantalla Menu
            texturaFondoFijo = new AssetBitmapTexture(actividadJuego.getTextureManager(),
                    actividadJuego.getAssets(), "Pantallas/Menu/fondosol.png");
            regionFondoFijo = TextureRegionFactory.extractFromTexture(texturaFondoFijo);
            texturaFondoFijo.load();

            texturaFondoNubes = new AssetBitmapTexture(actividadJuego.getTextureManager(),
                    actividadJuego.getAssets(),"Pantallas/Menu/nubes.png");
            regionFondoNubes = TextureRegionFactory.extractFromTexture(texturaFondoNubes);
            texturaFondoNubes.load();

            texturaFondoEdificios = new AssetBitmapTexture(actividadJuego.getTextureManager(),
                    actividadJuego.getAssets(),"Pantallas/Menu/edificios.png");
            regionFondoEdificios = TextureRegionFactory.extractFromTexture(texturaFondoEdificios);
            texturaFondoEdificios.load();

            texturaFondoPasto = new AssetBitmapTexture(actividadJuego.getTextureManager(),
                    actividadJuego.getAssets(),"Pantallas/Menu/pastos.png");
            regionFondoPasto = TextureRegionFactory.extractFromTexture(texturaFondoPasto);
            texturaFondoPasto.load();

            texturaFondoLejos = new AssetBitmapTexture(actividadJuego.getTextureManager(),
                    actividadJuego.getAssets(),"Pantallas/Menu/lamparasArbolesAtras.png");
            regionFondoLejos = TextureRegionFactory.extractFromTexture(texturaFondoLejos);
            texturaFondoLejos.load();

            texturaFondoCerca = new AssetBitmapTexture(actividadJuego.getTextureManager(),
                    actividadJuego.getAssets(),"Pantallas/Menu/cerca.png");
            regionFondoCerca = TextureRegionFactory.extractFromTexture(texturaFondoCerca);
            texturaFondoCerca.load();

            texturaFondoLogo = new AssetBitmapTexture(actividadJuego.getTextureManager(),
                    actividadJuego.getAssets(),"Pantallas/Menu/logo.png");
            regionFondoLogo = TextureRegionFactory.extractFromTexture(texturaFondoLogo);
            texturaFondoLogo.load();

        } catch (IOException e) {
            Log.d("cargarRecursosMenu", "No se puede cargar el fondo");
        }



        cargarBotonesMenu();
    }

    // CARGA LAS IMAGENES DE LOS BOTONES DEL MENÚ PRINCIPAL
    private void cargarBotonesMenu() {
        try {
            // CARGA LA IMAGEN DEL BOTON acercaDe
            texturaBotonAcercaDe = new AssetBitmapTexture(actividadJuego.getTextureManager(),
                    actividadJuego.getAssets(), "Pantallas/Menu/botonAcercaDe.png");
            regionBotonAcercaDe = TextureRegionFactory.extractFromTexture(texturaBotonAcercaDe);
            texturaBotonAcercaDe.load();

            // Carga la imagen para el botón jugar
            texturaBotonJugar = new AssetBitmapTexture(actividadJuego.getTextureManager(),
                    actividadJuego.getAssets(), "Pantallas/Menu/botonJugar.png");
            regionBotonJugar = TextureRegionFactory.extractFromTexture(texturaBotonJugar);
            texturaBotonJugar.load();
            //Carga la imagen para el boton tutoriales
            texturaBotonTutoriales = new AssetBitmapTexture(actividadJuego.getTextureManager(),
                    actividadJuego.getAssets(),"Pantallas/Menu/botonTutorial.png");
            regionBotonTutoriales = TextureRegionFactory.extractFromTexture(texturaBotonTutoriales);
            texturaBotonTutoriales.load();

        } catch (IOException e) {
            Log.d("cargarBotonesMenu", "No se pueden cargar las imagenes");
        }
    }

    public void liberarRecursosMenu() {
        // Fondo
        texturaFondoFijo.unload();
        regionFondoFijo = null;
        texturaFondoNubes.unload();
        regionFondoNubes = null;
        texturaFondoEdificios.unload();
        regionFondoEdificios = null;
        texturaFondoPasto.unload();
        regionFondoPasto = null;
        texturaFondoLejos.unload();
        regionFondoLejos = null;
        texturaFondoCerca.unload();
        regionFondoCerca = null;
        texturaFondoLogo.unload();
        regionFondoLogo = null;

        // botón jugar
        //btaBtnJugar.unload();
        //regionBtnJugar = null;
        texturaBotonAcercaDe.unload();
        regionBotonAcercaDe = null;
        texturaBotonJugar.unload();
        regionBotonJugar = null;
        texturaBotonTutoriales.unload();
        regionBotonTutoriales = null;
    }

    // Recursos de la pantalla de Acerca De
    public void cargarRecursosAcercaDe() {
        try {
            // Carga la imagen de fondo de la pantalla Splash
            texturaFondoAcercaDe = new AssetBitmapTexture(actividadJuego.getTextureManager(),
                    actividadJuego.getAssets(), "Pantallas/AcercaDe/About.png");
            regionFondoAcercaDe = TextureRegionFactory.extractFromTexture(texturaFondoAcercaDe);
            texturaFondoAcercaDe.load();
        } catch (IOException e) {
            Log.d("cargarRecursosAcercaDe", "No se pueden cargar las imagenes");
        }
    }

    public void liberarRecursosAcercaDe() {
        // Fondo
        texturaFondoAcercaDe.unload();
        regionFondoAcercaDe = null;

    }

    //Recursos de la pantalla TUTORIALES
    public void cargarRecursosTutoriales(){
        try{
            texturaFondoTutoriales = new AssetBitmapTexture(actividadJuego.getTextureManager(),
                    actividadJuego.getAssets(),"Pantallas/Tutorial/Tutorial.png");
            regionFondoTutoriales = TextureRegionFactory.extractFromTexture(texturaFondoTutoriales);
            texturaFondoTutoriales.load();
        }
        catch (IOException e){
            Log.d("CargarRecursosTutorial","No se pueden cargar las imagenes");
        }
    }

    public void liberarRecursosTutoriales(){
        texturaFondoTutoriales.unload();
        regionFondoTutoriales = null;
    }


    // Recursos de la pantalla de juego
    public void cargarRecursosJuego() {
        try {
            // Para no llamar al metodo muchas veces
            TextureManager admTexturas = actividadJuego.getTextureManager();
            AssetManager assets = actividadJuego.getAssets();
            // Carga la imagen de fondo de la pantalla splash

            texturaFondoJuego = new AssetBitmapTexture(admTexturas,
                    assets, "Pantallas/InGame.png");
            regionFondoJuego = TextureRegionFactory.extractFromTexture(texturaFondoJuego);
            texturaFondoJuego.load();

            texturaTaco = new AssetBitmapTexture(admTexturas,
                    assets, "taco.png");
            regionTaco= TextureRegionFactory.extractFromTexture(texturaTaco);
            texturaTaco.load();

            // Crear imagenes pausa
            texturaPausa = new AssetBitmapTexture(admTexturas,assets,"Pantallas/pantallaPause.png");
            regionPausa = TextureRegionFactory.extractFromTexture(texturaPausa);
            texturaPausa.load();

            texturaBtnPausaReanudar = new AssetBitmapTexture(admTexturas,assets,"Pausa/botonContinue.png");
            regionBtnPausaReanudar = TextureRegionFactory.extractFromTexture(texturaBtnPausaReanudar);
            texturaBtnPausaReanudar.load();

            texturaBtnPausaMenu = new AssetBitmapTexture(admTexturas,assets,"Pausa/botonExit.png");
            regionBtnPausaMenu = TextureRegionFactory.extractFromTexture(texturaBtnPausaMenu);
            texturaBtnPausaMenu.load();

            texturaPausar = new AssetBitmapTexture(admTexturas,assets,"Pausa/botonPausa.png");
            regionPausar = TextureRegionFactory.extractFromTexture(texturaPausar);
            texturaPausar.load();

            // Crear las imágenes de fondo y botón para el joystick virtual
            texturaFondoControl = new AssetBitmapTexture(admTexturas,
                    assets, "Joystick/BaseControl.png");
            regionFondoControl = TextureRegionFactory.extractFromTexture(texturaFondoControl);
            texturaFondoControl.load();
            texturaBotonControl = new AssetBitmapTexture(admTexturas,
                    assets, "Joystick/BotonControl.png");
            regionBotonControl = TextureRegionFactory.extractFromTexture(texturaBotonControl);
            texturaBotonControl.load();

            // Crear las imagenes del joystick dos
            texturaFondoControlDos = new AssetBitmapTexture(admTexturas,
                    assets, "Joystick/BaseControl.png");
            regionFondoControlDos = TextureRegionFactory.extractFromTexture(texturaFondoControlDos);
            texturaFondoControlDos.load();
            texturaBotonControlDos = new AssetBitmapTexture(admTexturas,
                    assets, "Joystick/BotonControl.png");
            regionBotonControlDos = TextureRegionFactory.extractFromTexture(texturaBotonControlDos);
            texturaBotonControlDos.load();

            texturaChileArma1 = new AssetBitmapTexture(admTexturas,
                    assets, "chileArma1.png");
            regionChileArma1 = TextureRegionFactory.extractFromTexture(texturaChileArma1);
            texturaChileArma1.load();
            Log.i("cargando", "termino de cargar todas las imagenes, no se puede");

            texturaCanastaDer = new AssetBitmapTexture(admTexturas,
                    assets, "DonGoyo/canastaDer.png");
            regionCanastaDer = TextureRegionFactory.extractFromTexture(texturaCanastaDer);
            texturaCanastaDer.load();

            texturaCanastaIzq = new AssetBitmapTexture(admTexturas,
                    assets, "DonGoyo/canastaIzq.png");
            regionCanastaIzq = TextureRegionFactory.extractFromTexture(texturaCanastaIzq);
            texturaCanastaIzq.load();

            texturaCanastaUp = new AssetBitmapTexture(admTexturas,
                    assets, "DonGoyo/canastaUp.png");
            regionCanastaUp = TextureRegionFactory.extractFromTexture(texturaCanastaUp);
            texturaCanastaUp.load();

            texturaCanastaDown = new AssetBitmapTexture(admTexturas,
                    assets, "DonGoyo/canastaDown.png");
            regionCanastaDown = TextureRegionFactory.extractFromTexture(texturaCanastaDown);
            texturaCanastaDown.load();

        } catch (IOException e) {
            Log.d("cargarRecursosJuego", "No se puede cargar el fondo");
        }

        //Don goyo a la izquierda
        texturaDonGoyoIzq = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),182,142);
        regionDonGoyoIzq = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaDonGoyoIzq,actividadJuego, "DonGoyo/donGoyoCaminataIzq.png",4,2);
        try {
            texturaDonGoyoIzq.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite de Don Goyo caminando");
        }
        texturaDonGoyoIzq.load();

        //Don goyo a la derecha
        texturaDonGoyoDer = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),182,142);
        regionDonGoyoDer = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaDonGoyoDer,actividadJuego, "DonGoyo/donGoyoCaminataDer.png",4,2);
        try {
            texturaDonGoyoDer.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite de Don Goyo caminando");
        }
        texturaDonGoyoDer.load();

        //Don goyo hacia arriba
        texturaDonGoyoArr = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),156,142);
        regionDonGoyoArr = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaDonGoyoArr,actividadJuego, "DonGoyo/donGoyoCaminataArr.png",4,2);
        try {
            texturaDonGoyoArr.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite de Don Goyo caminando");
        }
        texturaDonGoyoArr.load();

        //Don goyo hacia abajo
        texturaDonGoyoAba = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),156,142);
        regionDonGoyoAba = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaDonGoyoAba,actividadJuego, "DonGoyo/donGoyoCaminataAba.png",4,2);
        try {
            texturaDonGoyoAba.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite de Don Goyo caminando");
        }
        texturaDonGoyoAba.load();

        //Don Goyo Quieto Derecha
        texturaDonGoyoQuietoDer = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),80,156);
        regionDonGoyoQuietoDer = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaDonGoyoQuietoDer,actividadJuego, "DonGoyo/donGoyoQuietoDer.png",1,2);
        try {
            texturaDonGoyoQuietoDer.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite de Don Goyo caminando");
        }
        texturaDonGoyoQuietoDer.load();

        //Don Goyo Quieto Izquierda
        texturaDonGoyoQuietoIzq = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),80,156);
        regionDonGoyoQuietoIzq = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaDonGoyoQuietoIzq,actividadJuego, "DonGoyo/donGoyoQuietoIzq.png",1,2);
        try {
            texturaDonGoyoQuietoIzq.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite de Don Goyo caminando");
        }
        texturaDonGoyoQuietoIzq.load();

        //Don Goyo Quieto Abajo
        texturaDonGoyoQuietoAba = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),80,156);
        regionDonGoyoQuietoAba = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaDonGoyoQuietoAba,actividadJuego, "DonGoyo/donGoyoQuietoAba.png",1,2);
        try {
            texturaDonGoyoQuietoAba.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite de Don Goyo caminando");
        }
        texturaDonGoyoQuietoAba.load();

        //Perro3 3 a la derecha
        texturaPerro3Der = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),308,36);
        regionPerro3Der = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro3Der,actividadJuego, "Perro3/perro3Der.png",4,1);
        try {
            texturaPerro3Der.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro3Der.load();


        //Perro3 3 a la izquierda
        texturaPerro3Izq = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),308,36);
        regionPerro3Izq = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro3Izq,actividadJuego, "Perro3/perro3Izq.png",4,1);
        try {
            texturaPerro3Izq.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro3Izq.load();

        //Perro3 3 hacia arriba
        texturaPerro3Up = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),90,38);
        regionPerro3Up = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro3Up,actividadJuego, "Perro3/perro3Up.png",4,1);
        try {
            texturaPerro3Up.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro3Up.load();

        //Perro3 3 hacia abajo
        texturaPerro3Down = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),90,36);
        regionPerro3Down = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro3Down,actividadJuego, "Perro3/perro3Down.png",4,1);
        try {
            texturaPerro3Down.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro3Down.load();

        //Perro 3 TIPO 2
        //Perro3 3 a la derecha
        texturaPerro3Der2 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),308,36);
        regionPerro3Der2 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro3Der2,actividadJuego, "PerrosV3/perro lado derecho 2 v2.png",4,1);
        try {
            texturaPerro3Der2.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro3Der2.load();


        //Perro3 3 a la izquierda
        texturaPerro3Izq2 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),308,36);
        regionPerro3Izq2 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro3Izq2,actividadJuego, "PerrosV3/perro lado 2 v2.png",4,1);
        try {
            texturaPerro3Izq2.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro3Izq2.load();

        //Perro3 3 hacia arriba
        texturaPerro3Up2 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),90,38);
        regionPerro3Up2 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro3Up2,actividadJuego, "PerrosV3/perro delantero 2 v2.png",4,1);
        try {
            texturaPerro3Up2.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro3Up2.load();

        //Perro3 3 hacia abajo
        texturaPerro3Down2 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),90,36);
        regionPerro3Down2 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro3Down2,actividadJuego, "PerrosV3/perro trasero 2 v2.png",4,1);
        try {
            texturaPerro3Down2.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro3Down2.load();
        // FIN PPERO 3 TIPO 2

        // PERRO 3 TIPO 3
        //Perro3 3 a la derecha
        texturaPerro3Der3 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),308,36);
        regionPerro3Der3 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro3Der3,actividadJuego, "PerrosV3/perro lado derecho 3 v2.png",4,1);
        try {
            texturaPerro3Der3.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro3Der3.load();


        //Perro3 3 a la izquierda
        texturaPerro3Izq3 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),308,36);
        regionPerro3Izq3 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro3Izq3,actividadJuego, "PerrosV3/perro lado 3 v2.png",4,1);
        try {
            texturaPerro3Izq3.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro3Izq3.load();

        //Perro3 3 hacia arriba
        texturaPerro3Up3 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),90,38);
        regionPerro3Up3 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro3Up3,actividadJuego, "PerrosV3/perro delantero 3 v2.png",4,1);
        try {
            texturaPerro3Up3.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro3Up3.load();

        //Perro3 3 hacia abajo
        texturaPerro3Down3 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),90,36);
        regionPerro3Down3 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro3Down3,actividadJuego, "PerrosV3/perro trasero 3 v2.png",4,1);
        try {
            texturaPerro3Down3.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro3Down3.load();
        //  FIN PERRO 3 TIPO 3

        //Perro 2 a la derecha
        texturaPerro2Der = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),138,34);
        regionPerro2Der = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro2Der,actividadJuego, "Perro2/perro2Der.png",4,1);
        try {
            texturaPerro2Der.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro2Der.load();

        //Perro2 a la izquierda
        texturaPerro2Izq = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),138,34);
        regionPerro2Izq = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro2Izq,actividadJuego, "Perro2/perro2Izq.png",4,1);
        try {
            texturaPerro2Izq.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro2Izq.load();

        //Perro2 hacia arriba
        texturaPerro2Up = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),86,36);
        regionPerro2Up = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro2Up,actividadJuego, "Perro2/perro2Up.png",4,1);
        try {
            texturaPerro2Up.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro2Up.load();

        //Perro2 hacia abajo
        texturaPerro2Down = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),86,36);
        regionPerro2Down = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro2Down,actividadJuego, "Perro2/perro2Down.png",4,1);
        try {
            texturaPerro2Down.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro2Down.load();

        //Perro 2 tipo 2 a la derecha
        texturaPerro2Der2 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),138,34);
        regionPerro2Der2 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro2Der2,actividadJuego, "Perro2/perro2Der2.png",4,1);
        try {
            texturaPerro2Der2.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0, 0, 0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro2Der2.load();

        //Perro2 a la izquierda
        texturaPerro2Izq2 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),138,34);
        regionPerro2Izq2 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro2Izq2,actividadJuego, "Perro2/perro2Izq2.png",4,1);
        try {
            texturaPerro2Izq2.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0, 0, 0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro2Izq2.load();

        //Perro2 hacia arriba
        texturaPerro2Up2 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),86,36);
        regionPerro2Up2 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro2Up2,actividadJuego, "Perro2/perro2Up2.png",4,1);
        try {
            texturaPerro2Up2.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0, 0, 0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro2Up2.load();

        //Perro2 hacia abajo
        texturaPerro2Down2 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),86,36);
        regionPerro2Down2 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro2Down2,actividadJuego, "Perro2/perro2Down2.png",4,1);
        try {
            texturaPerro2Down2.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0, 0, 0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro2Down2.load();

        //Fin perro 2 tipo 2

        //Perro 2 tipo 3
        texturaPerro2Der3 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),138,34);
        regionPerro2Der3 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro2Der3,actividadJuego, "Perro2/perro2Der3.png",4,1);
        try {
            texturaPerro2Der3.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0, 0, 0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro2Der3.load();

        //Perro2 a la izquierda
        texturaPerro2Izq3 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),138,34);
        regionPerro2Izq3 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro2Izq3,actividadJuego, "Perro2/perro2Izq3.png",4,1);
        try {
            texturaPerro2Izq3.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0, 0, 0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro2Izq3.load();

        //Perro2 hacia arriba
        texturaPerro2Up3 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),86,36);
        regionPerro2Up3 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro2Up3,actividadJuego, "Perro2/perro2Up3.png",4,1);
        try {
            texturaPerro2Up3.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0, 0, 0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro2Up3.load();

        //Perro2 hacia abajo
        texturaPerro2Down3 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),86,36);
        regionPerro2Down3 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro2Down3,actividadJuego, "Perro2/perro2Down3.png",4,1);
        try {
            texturaPerro2Down3.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0, 0, 0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro2Down3.load();

        //Fin perro 2 tipo 3


        //
        //Perro 1 a la derecha
        texturaPerro1Der = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),308,80);
        regionPerro1Der = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro1Der,actividadJuego, "Perro1/perro1Der.png",4,1);
        try {
            texturaPerro1Der.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro1Der.load();

        //Perro2 a la izquierda
        texturaPerro1Izq = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),308,80);
        regionPerro1Izq = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro1Izq,actividadJuego, "Perro1/perro1Izq.png",4,1);
        try {
            texturaPerro1Izq.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro1Izq.load();

        //Perro2 hacia arriba
        texturaPerro1Up = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),308,80);
        regionPerro1Up = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro1Up,actividadJuego, "Perro1/perro1Up.png",4,1);
        try {
            texturaPerro1Up.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro1Up.load();

        //Perro2 hacia abajo
        texturaPerro1Down = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),308,80);
        regionPerro1Down = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(
                texturaPerro1Down,actividadJuego, "Perro1/perro1Down.png",4,1);
        try {
            texturaPerro1Down.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0,0,0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del perro caminando");
        }
        texturaPerro1Down.load();

        //Cliente
        texturaCliente1 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),30,138);
        regionCliente1 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(texturaCliente1,
                actividadJuego, "Cliente/cliente1.png", 1, 2);

        try {
            texturaCliente1.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0, 0, 0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del cliente moviendose");
        }
        texturaCliente1.load();

        texturaCliente2 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),30,138);
        regionCliente2 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(texturaCliente2,
                actividadJuego, "Cliente/cliente2.png", 1, 2);

        try {
            texturaCliente2.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0, 0, 0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del cliente moviendose");
        }
        texturaCliente2.load();

        texturaCliente3 = new BuildableBitmapTextureAtlas(actividadJuego.getTextureManager(),30,138);
        regionCliente3 = BitmapTextureAtlasTextureRegionFactory.createTiledFromAsset(texturaCliente3,
                actividadJuego, "Cliente/cliente3.png", 1, 2);

        try {
            texturaCliente3.build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(0, 0, 0));
        } catch (ITextureAtlasBuilder.TextureAtlasBuilderException e) {
            Log.d("onCreateResources","No se puede cargar la imagen para el Sprite del cliente moviendose");
        }
        texturaCliente3.load();





    }
    public void liberarRecursosJuego() {
        // fondo
        texturaFondoJuego.unload();
        regionFondoJuego = null;
        //Don Goyo
        texturaDonGoyoIzq.unload();
        regionDonGoyoIzq = null;
        texturaDonGoyoDer.unload();
        regionDonGoyoDer = null;
        texturaDonGoyoAba.unload();
        regionDonGoyoAba = null;
        texturaDonGoyoArr.unload();
        regionDonGoyoArr = null;
        texturaDonGoyoQuietoDer.unload();
        regionDonGoyoQuietoDer = null;
        texturaDonGoyoQuietoIzq.unload();
        regionDonGoyoQuietoIzq = null;
        texturaDonGoyoQuietoAba.unload();
        regionDonGoyoQuietoAba = null;
        //Perros
        texturaPerro3Der.unload();
        regionPerro3Der = null;
        texturaPerro3Izq.unload();
        regionPerro3Izq = null;
        texturaPerro3Up.unload();
        regionPerro3Up = null;
        texturaPerro3Down.unload();
        regionPerro3Down = null;
        texturaPerro3Der2.unload();
        regionPerro3Der2 = null;
        texturaPerro3Izq2.unload();
        regionPerro3Izq2 = null;
        texturaPerro3Up2.unload();
        regionPerro3Up2 = null;
        texturaPerro3Down2.unload();
        regionPerro3Down2 = null;
        texturaPerro3Der3.unload();
        regionPerro3Der3 = null;
        texturaPerro3Izq3.unload();
        regionPerro3Izq3 = null;
        texturaPerro3Up3.unload();
        regionPerro3Up3 = null;
        texturaPerro3Down3.unload();
        regionPerro3Down3 = null;
        texturaPerro2Der.unload();
        regionPerro2Der = null;
        texturaPerro2Izq.unload();
        regionPerro2Izq = null;
        texturaPerro2Up.unload();
        regionPerro2Up = null;
        texturaPerro2Down.unload();
        regionPerro2Down = null;
        texturaPerro2Der2.unload();
        regionPerro2Der2 = null;
        texturaPerro2Izq2.unload();
        regionPerro2Izq2 = null;
        texturaPerro2Up2.unload();
        regionPerro2Up2 = null;
        texturaPerro2Down2.unload();
        regionPerro2Down2 = null;
        texturaPerro2Der3.unload();
        regionPerro2Der3 = null;
        texturaPerro2Izq3.unload();
        regionPerro2Izq3 = null;
        texturaPerro2Up3.unload();
        regionPerro2Up3 = null;
        texturaPerro2Down3.unload();
        regionPerro2Down3 = null;
        texturaPerro1Der.unload();
        regionPerro1Der = null;
        texturaPerro1Izq.unload();
        regionPerro1Izq = null;
        texturaPerro1Up.unload();
        regionPerro1Up = null;
        texturaPerro1Down.unload();
        regionPerro1Down = null;
        //Chiles
        texturaChileArma1.unload();
        regionChileArma1 = null;

        //canasta
        texturaCanastaDer.unload();
        regionCanastaDer = null;
        texturaCanastaIzq.unload();
        regionCanastaIzq = null;
        texturaCanastaUp.unload();
        regionCanastaUp = null;
        texturaCanastaDown.unload();
        regionCanastaDown = null;

        //Pausa
        texturaPausa.unload();
        regionPausa = null;
        texturaBtnPausaMenu.unload();
        regionBtnPausaMenu = null;
        texturaBtnPausaReanudar.unload();
        regionBtnPausaReanudar = null;
        texturaPausar.unload();
        regionPausar = null;
        texturaTaco.unload();
        regionTaco= null;
        texturaCliente1.unload();
        regionCliente1 = null;
        texturaCliente2.unload();
        regionCliente2 = null;
        texturaCliente3.unload();
        regionCliente3 = null;

        // Joystick virtual
        //texturaFondoControl.unload();
        //regionFondoControl = null;
        //texturaBotonControl.unload();
        //regionBotonControl = null;
    }
}